clamav: all; init; add only non-empty parameters
authorPaul Donald <[email protected]>
Thu, 2 Oct 2025 12:24:38 +0000 (14:24 +0200)
committerWesley Gimenes <[email protected]>
Thu, 2 Oct 2025 22:52:52 +0000 (19:52 -0300)
Gate all parameters behind -n, a not-empty check. Prevents failed starts
where daemons expect a value for a parameter.

Closes #27430
Tested-on: 24.10.3
Signed-off-by: Paul Donald <[email protected]>
net/clamav/Makefile
net/clamav/files/clamav-milter.init
net/clamav/files/clamav.init
net/clamav/files/freshclam.config
net/clamav/files/freshclam.init

index b13bac000d1b4477079a0ceaaeb3f7e52426e003..8ed8d80d409c3fb9fd5a2d8cc2f165522b5a8b1a 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=clamav
 PKG_VERSION:=1.4.3
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://www.clamav.net/downloads/production/
index 603e2a1af53e18fdd9f9994a0aa048be049cafa1..52f74798c03aa3396063d71e3b822463b4895542 100644 (file)
@@ -51,30 +51,30 @@ start_clamav_milter_instance() {
        ln -sf "$clamav_milter_config_file" "$CLAMAV_MILTER_CONFIGFILE"
 
        {
-       echo "Foreground " "$Foreground"
-       echo "PidFile " "$PidFile"
-       echo "User " "$User"
-       echo "MilterSocketGroup " "$MilterSocketGroup"
-       echo "ReadTimeout " "$ReadTimeout"
-       echo "OnClean " "$OnClean"
-       echo "OnInfected " "$OnInfected"
-       echo "OnFail " "$OnFail"
-       echo "AddHeader " "$AddHeader"
-       echo "LogVerbose " "$LogVerbose"
-       echo "LogTime " "$LogTime"
-       echo "LogSyslog " "$LogSyslog"
-       echo "Debug " "$Debug"
-       echo "LogFacility " "$LogFacility"
-       echo "LogInfected " "$LogInfected"
-       echo "LogClean " "$LogClean"
-       echo "MaxFileSize " "$MaxFileSize"
-       echo "SupportMultipleRecipients " "$SupportMultipleRecipients"
-       echo "RejectMsg " "$RejectMsg"
-       echo "TemporaryDirectory " "$TemporaryDirectory"
-       echo "MilterSocket " "$MilterSocket"
-       echo "MilterSocketMode " "$MilterSocketMode"
-       echo "ClamdSocket " "$ClamdSocket"
-       echo "FixStaleSocket " "$FixStaleSocket"
+       [ -n "$Foreground" ]                            && echo "Foreground " "$Foreground"
+       [ -n "$PidFile" ]                                       && echo "PidFile " "$PidFile"
+       [ -n "$User" ]                                          && echo "User " "$User"
+       [ -n "$MilterSocketGroup" ]                     && echo "MilterSocketGroup " "$MilterSocketGroup"
+       [ -n "$ReadTimeout" ]                           && echo "ReadTimeout " "$ReadTimeout"
+       [ -n "$OnClean" ]                                       && echo "OnClean " "$OnClean"
+       [ -n "$OnInfected" ]                            && echo "OnInfected " "$OnInfected"
+       [ -n "$OnFail" ]                                        && echo "OnFail " "$OnFail"
+       [ -n "$AddHeader" ]                                     && echo "AddHeader " "$AddHeader"
+       [ -n "$LogVerbose" ]                            && echo "LogVerbose " "$LogVerbose"
+       [ -n "$LogTime" ]                                       && echo "LogTime " "$LogTime"
+       [ -n "$LogSyslog" ]                                     && echo "LogSyslog " "$LogSyslog"
+       [ -n "$Debug" ]                                         && echo "Debug " "$Debug"
+       [ -n "$LogFacility" ]                           && echo "LogFacility " "$LogFacility"
+       [ -n "$LogInfected" ]                           && echo "LogInfected " "$LogInfected"
+       [ -n "$LogClean" ]                                      && echo "LogClean " "$LogClean"
+       [ -n "$MaxFileSize" ]                           && echo "MaxFileSize " "$MaxFileSize"
+       [ -n "$SupportMultipleRecipients" ]     && echo "SupportMultipleRecipients " "$SupportMultipleRecipients"
+       [ -n "$RejectMsg" ]                                     && echo "RejectMsg " "$RejectMsg"
+       [ -n "$TemporaryDirectory" ]            && echo "TemporaryDirectory " "$TemporaryDirectory"
+       [ -n "$MilterSocket" ]                          && echo "MilterSocket " "$MilterSocket"
+       [ -n "$MilterSocketMode" ]                      && echo "MilterSocketMode " "$MilterSocketMode"
+       [ -n "$ClamdSocket" ]                           && echo "ClamdSocket " "$ClamdSocket"
+       [ -n "$FixStaleSocket" ]                        && echo "FixStaleSocket " "$FixStaleSocket"
        } > "$CLAMAV_MILTER_CONFIGFILE"
 
        procd_open_instance
index f7ff1e6e1eb18d8daf379065013134ddb5392c36..4d24b9a1d5fb4459eceff189927321b33dbf8b75 100644 (file)
@@ -64,39 +64,39 @@ start_clamav_instance() {
        ln -sf "$clamd_config_file" "$CLAMD_CONFIGFILE"
 
        {
-       echo "LogVerbose " "$LogVerbose"
-       echo "LogTime " "$LogTime"
-       echo "Debug " "$Debug"
-       echo "LogSyslog " "$LogSyslog"
-       echo "LogFacility " "$LogFacility"
-       echo "ExtendedDetectionInfo " "$ExtendedDetectionInfo"
-       echo "OfficialDatabaseOnly " "$OfficialDatabaseOnly"
-       echo "StreamMinPort " "$StreamMinPort"
-       echo "StreamMaxPort " "$StreamMaxPort"
-       echo "MaxThreads " "$MaxThreads"
-       echo "ReadTimeout " "$ReadTimeout"
-       echo "CommandReadTimeout " "$CommandReadTimeout"
-       echo "MaxDirectoryRecursion " "$MaxDirectoryRecursion"
-       echo "FollowDirectorySymlinks " "$FollowDirectorySymlinks"
-       echo "FollowFileSymlinks " "$FollowFileSymlinks"
-       echo "SelfCheck " "$SelfCheck"
-       echo "DetectPUA " "$DetectPUA"
-       echo "ScanPE " "$ScanPE"
-       echo "DisableCertCheck " "$DisableCertCheck"
-       echo "ScanELF " "$ScanELF"
-       echo "AlertBrokenExecutables " "$AlertBrokenExecutables"
-       echo "ScanOLE2 " "$ScanOLE2"
-       echo "ScanPDF " "$ScanPDF"
-       echo "ScanSWF " "$ScanSWF"
-       echo "ScanMail " "$ScanMail"
-       echo "ScanPartialMessages " "$ScanPartialMessages"
-       echo "ScanArchive " "$ScanArchive"
-       echo "TemporaryDirectory " "$TemporaryDirectory"
-       echo "AlertEncrypted " "$AlertEncrypted"
-       echo "MaxFileSize " "$MaxFileSize"
-       echo "User " "$User"
-       echo "ExitOnOOM " "$ExitOnOOM"
-       echo "DatabaseDirectory " "$DatabaseDirectory"
+       [ -n "$LogVerbose" ]                            && echo "LogVerbose " "$LogVerbose"
+       [ -n "$LogTime" ]                                       && echo "LogTime " "$LogTime"
+       [ -n "$Debug" ]                                         && echo "Debug " "$Debug"
+       [ -n "$LogSyslog" ]                                     && echo "LogSyslog " "$LogSyslog"
+       [ -n "$LogFacility" ]                           && echo "LogFacility " "$LogFacility"
+       [ -n "$ExtendedDetectionInfo" ]         && echo "ExtendedDetectionInfo " "$ExtendedDetectionInfo"
+       [ -n "$OfficialDatabaseOnly" ]          && echo "OfficialDatabaseOnly " "$OfficialDatabaseOnly"
+       [ -n "$StreamMinPort" ]                         && echo "StreamMinPort " "$StreamMinPort"
+       [ -n "$StreamMaxPort" ]                         && echo "StreamMaxPort " "$StreamMaxPort"
+       [ -n "$MaxThreads" ]                            && echo "MaxThreads " "$MaxThreads"
+       [ -n "$ReadTimeout" ]                           && echo "ReadTimeout " "$ReadTimeout"
+       [ -n "$CommandReadTimeout" ]            && echo "CommandReadTimeout " "$CommandReadTimeout"
+       [ -n "$MaxDirectoryRecursion" ]         && echo "MaxDirectoryRecursion " "$MaxDirectoryRecursion"
+       [ -n "$FollowDirectorySymlinks" ]       && echo "FollowDirectorySymlinks " "$FollowDirectorySymlinks"
+       [ -n "$FollowFileSymlinks" ]            && echo "FollowFileSymlinks " "$FollowFileSymlinks"
+       [ -n "$SelfCheck" ]                                     && echo "SelfCheck " "$SelfCheck"
+       [ -n "$DetectPUA" ]                                     && echo "DetectPUA " "$DetectPUA"
+       [ -n "$ScanPE" ]                                        && echo "ScanPE " "$ScanPE"
+       [ -n "$DisableCertCheck" ]                      && echo "DisableCertCheck " "$DisableCertCheck"
+       [ -n "$ScanELF" ]                                       && echo "ScanELF " "$ScanELF"
+       [ -n "$AlertBrokenExecutables" ]        && echo "AlertBrokenExecutables " "$AlertBrokenExecutables"
+       [ -n "$ScanOLE2" ]                                      && echo "ScanOLE2 " "$ScanOLE2"
+       [ -n "$ScanPDF" ]                                       && echo "ScanPDF " "$ScanPDF"
+       [ -n "$ScanSWF" ]                                       && echo "ScanSWF " "$ScanSWF"
+       [ -n "$ScanMail" ]                                      && echo "ScanMail " "$ScanMail"
+       [ -n "$ScanPartialMessages" ]           && echo "ScanPartialMessages " "$ScanPartialMessages"
+       [ -n "$ScanArchive" ]                           && echo "ScanArchive " "$ScanArchive"
+       [ -n "$TemporaryDirectory" ]            && echo "TemporaryDirectory " "$TemporaryDirectory"
+       [ -n "$AlertEncrypted" ]                        && echo "AlertEncrypted " "$AlertEncrypted"
+       [ -n "$MaxFileSize" ]                           && echo "MaxFileSize " "$MaxFileSize"
+       [ -n "$User" ]                                          && echo "User " "$User"
+       [ -n "$ExitOnOOM" ]                                     && echo "ExitOnOOM " "$ExitOnOOM"
+       [ -n "$DatabaseDirectory" ]                     && echo "DatabaseDirectory " "$DatabaseDirectory"
        } > "$CLAMD_CONFIGFILE"
 
        if [ -n "$LocalSocket" ]; then
index bd1ad30c2d4f5761e1015002c5089d709eb627ac..9cc52f779ed7f27b98e7d664161250d4ca7b1773 100644 (file)
@@ -21,6 +21,6 @@ config freshclam 'freshclam'
        option Checks '12'
        option TestDatabases 'yes'
        option Bytecode 'yes'
-       option ExtraDatabase ' '
-       option ExcludeDatabase ' '
+       option ExtraDatabase ''
+       option ExcludeDatabase ''
 
index 804b74fc1eca37f5bde11358ab1c361a12559bde..b137462c70430c5abf9f12a8496cfd19a4eccc43 100644 (file)
@@ -52,29 +52,29 @@ start_freshclam_instance() {
        ln -sf "$freshclam_config_file" "$FRESHCLAM_CONFIGFILE"
 
        {
-       echo "LogTime " "$LogTime"
-       echo "LogVerbose " "$LogVerbose"
-       echo "LogSyslog " "$LogSyslog"
-       echo "Debug " "$Debug"
-       echo "LogFacility " "$LogFacility"
-       echo "Foreground " "$Foreground"
-       echo "PidFile " "$PidFile"
-       echo "DatabaseMirror " "$DatabaseMirror"
-       echo "NotifyClamd " "$NotifyClamd"
-       echo "DatabaseOwner " "$DatabaseOwner"
-       echo "CompressLocalDatabase " "$CompressLocalDatabase"
-       echo "DatabaseDirectory " "$DatabaseDirectory"
-       echo "DNSDatabaseInfo " "$DNSDatabaseInfo"
-       echo "ScriptedUpdates " "$ScriptedUpdates"
-       echo "DatabaseCustomURL " "$DatabaseCustomURL"
-       echo "ConnectTimeout " "$ConnectTimeout"
-       echo "ReceiveTimeout " "$ReceiveTimeout"
-       echo "PrivateMirror " "$PrivateMirror"
-       echo "Checks " "$Checks"
-       echo "TestDatabases " "$TestDatabases"
-       echo "Bytecode " "$Bytecode"
-       echo "ExtraDatabase " "$ExtraDatabase"
-       echo "ExcludeDatabase " "$ExcludeDatabase"
+       [ -n "$LogTime" ]                               && echo "LogTime " "$LogTime"
+       [ -n "$LogVerbose" ]                    && echo "LogVerbose " "$LogVerbose"
+       [ -n "$LogSyslog" ]                     && echo "LogSyslog " "$LogSyslog"
+       [ -n "$Debug" ]                                 && echo "Debug " "$Debug"
+       [ -n "$LogFacility" ]                   && echo "LogFacility " "$LogFacility"
+       [ -n "$Foreground" ]                    && echo "Foreground " "$Foreground"
+       [ -n "$PidFile" ]                               && echo "PidFile " "$PidFile"
+       [ -n "$DatabaseMirror" ]                && echo "DatabaseMirror " "$DatabaseMirror"
+       [ -n "$NotifyClamd" ]                   && echo "NotifyClamd " "$NotifyClamd"
+       [ -n "$DatabaseOwner" ]                 && echo "DatabaseOwner " "$DatabaseOwner"
+       [ -n "$CompressLocalDatabase" ] && echo "CompressLocalDatabase " "$CompressLocalDatabase"
+       [ -n "$DatabaseDirectory" ]     && echo "DatabaseDirectory " "$DatabaseDirectory"
+       [ -n "$DNSDatabaseInfo" ]               && echo "DNSDatabaseInfo " "$DNSDatabaseInfo"
+       [ -n "$ScriptedUpdates" ]               && echo "ScriptedUpdates " "$ScriptedUpdates"
+       [ -n "$DatabaseCustomURL" ]     && echo "DatabaseCustomURL " "$DatabaseCustomURL"
+       [ -n "$ConnectTimeout" ]                && echo "ConnectTimeout " "$ConnectTimeout"
+       [ -n "$ReceiveTimeout" ]                && echo "ReceiveTimeout " "$ReceiveTimeout"
+       [ -n "$PrivateMirror" ]                 && echo "PrivateMirror " "$PrivateMirror"
+       [ -n "$Checks" ]                                && echo "Checks " "$Checks"
+       [ -n "$TestDatabases" ]                 && echo "TestDatabases " "$TestDatabases"
+       [ -n "$Bytecode" ]                              && echo "Bytecode " "$Bytecode"
+       [ -n "$ExtraDatabase" ]                 && echo "ExtraDatabase " "$ExtraDatabase"
+       [ -n "$ExcludeDatabase" ]               && echo "ExcludeDatabase " "$ExcludeDatabase"
        } > "$FRESHCLAM_CONFIGFILE"
 
        procd_open_instance